QAudioOutput Class

您所在的位置:网站首页 Qtaudiooutput 播放麦克风 QAudioOutput Class

QAudioOutput Class

2024-07-06 15:00| 来源: 网络整理| 查看: 265

QAudioOutput Class

The QAudioOutput class provides an interface for sending audio data to an audio output device. More...

Header: #include qmake: QT += multimedia Inherits: QObject List of all members, including inherited members Public Functions QAudioOutput(const QAudioDeviceInfo &audioDevice, const QAudioFormat &format = QAudioFormat(), QObject *parent = nullptr) QAudioOutput(const QAudioFormat &format = QAudioFormat(), QObject *parent = nullptr) virtual ~QAudioOutput() int bufferSize() const int bytesFree() const QString category() const qint64 elapsedUSecs() const QAudio::Error error() const QAudioFormat format() const int notifyInterval() const int periodSize() const qint64 processedUSecs() const void reset() void resume() void setBufferSize(int value) void setCategory(const QString &category) void setNotifyInterval(int ms) void setVolume(qreal volume) void start(QIODevice *device) QIODevice *start() QAudio::State state() const void stop() void suspend() qreal volume() const Signals void notify() void stateChanged(QAudio::State state) Detailed Description

You can construct an audio output with the system's default audio output device. It is also possible to create QAudioOutput with a specific QAudioDeviceInfo. When you create the audio output, you should also send in the QAudioFormat to be used for the playback (see the QAudioFormat class description for details).

To play a file:

Starting to play an audio stream is simply a matter of calling start() with a QIODevice. QAudioOutput will then fetch the data it needs from the io device. So playing back an audio file is as simple as:

QFile sourceFile; // class member. QAudioOutput* audio; // class member. { sourceFile.setFileName("/tmp/test.raw"); sourceFile.open(QIODevice::ReadOnly); QAudioFormat format; // Set up the format, eg. format.setSampleRate(8000); format.setChannelCount(1); format.setSampleSize(8); format.setCodec("audio/pcm"); format.setByteOrder(QAudioFormat::LittleEndian); format.setSampleType(QAudioFormat::UnSignedInt); QAudioDeviceInfo info(QAudioDeviceInfo::defaultOutputDevice()); if (!info.isFormatSupported(format)) { qWarning()


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3